<template>
    <div>
        <!-- 全局事件总线，1.先去main.js写  2.然后到要发送数据的modul的方法里面写$emit等方法  3.然后去接收数据的mounted钩子函数里面写$on等方法 -->
        <!-- 这种方式，所有组件都可以通信 -->
        <button @click="emitAdd">点我触发全局事件总线</button>
        <!-- 第二种方式 -->
        <!-- 这种方式的步骤 1.先在要发送数据的module里导入pubsub-js文件，如果没有的话，就需要npm i pubsub-js -->
        <!-- 2.然后在方法里面写上调用发布数据的方法 -->
        <!-- 3.然后在接收数据的module里面导入pubsub-js，然后在mounted钩子函数里面，调用订阅方法就可以获得数据 -->
        <button @click="subAdd">pubsub按钮，也是全局事件总线，只不过需要导入pubsub-js的包</button>
    </div>
</template>

<script>
    import pubsub from 'pubsub-js'
export default {
    data(){
        return{
            data:'son data'
        }
    },
    methods:{
        emitAdd(){
            // 要发送数据了
            this.$bus.$emit('acceptOn',this.data)
        },
        // pubsub发送数据的地方
        subAdd(){
            pubsub.publish('publish发布一个apple',this.data)
        }
    }
};
</script>

<style lang="scss" scoped>

</style>